<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <!-- <style>
        .container { border: 1px solid #000 }
        .item { height: 10px; margin: 10px; float: left;}
    </style> -->
</head>
<body>
        <!-- <div class="container">
                <div class="item" ></div>
                <div class="item" ></div>
            </div> -->
            
           
    <script>
        // async function async1() {
        //     console.log('async1 start');  // 2
        //     await async2();
        //     console.log('async1 end');    // 6
        // }

        // async function async2() {     
        //     console.log('async2');        // 3
        // }

        // console.log('script start');    //  1

        // setTimeout(function() {
        //     console.log('setTimeout');    // 8
        // }, 0);

        // async1();

        // new Promise(function(resolve) {
        //     console.log('promise1');      // 4
        //     resolve();
        // }).then(function() {
        //     console.log('promise2');  // 7
        // });

        // console.log('script end');      // 5


// Promise.resolve().then(() => console.log(2));
// new Promise((resolve, reject) => {
//   resolve();
//   console.log(3);
// }).then(() => console.log(4));
// setTimeout(() => {
//   Promise.resolve().then(() => console.log(5));
//   setTimeout(() => console.log(7), 0);
// }, 0);
// setTimeout(() => console.log(6), 0);

//3,2,4,5,6,7

// var arr = [1,23,4,6,4,3];
// function fn1(arr){
//     var max = Math.max.apply(null,arr);
//     var min = Math.min.apply(null,arr);
//     console.log(max-min);
//  }
// fn1(arr);

// 实现一个函数 function flat (arr) {}
// 输入arr = [1,2,3, [4, 5, [7, 8, 9]]]
// return [1,2,3,4,5,6,7,8,9]
// var arr = [1,2,3, [4, 5, [7, 8, 9]]];
// function flat (arr){
//     var newArr = [];
//     for(var i = 0;i<arr.length;i++){
//         if(typeof arr[i] != "number"){//不是一个数字
//             console.log(arr[i]);
//             var arr2 = flat(arr[i]);
//             newArr = newArr.concat(arr2);
//         }else{
//             newArr.push(arr[i]);
//         }
//     } 
//     return newArr;
// }
// console.log(flat(arr));

// function sleep(ms){
//    var start=Date.now(),expire=start+ms;
//    while(Date.now()<expire);
//    return;
// }
// console.log(2);
// sleep(2000);
// console.log(1);


// var arr = [1,2,3,5,6,2,3,5,8,9];
// function fn2(arr){
//     var resArr = [];
//     for(var i =0; i<arr.length;i++){
//         if(resArr.indexOf(arr[i])==-1){//找不到
//             resArr.push(arr[i]);
//         }
//     }
//     return resArr;
// }
// console.log(fn2(arr));

// if ([] == false) {console.log(1);};//1
// if ([]) {console.log(2);};//2
// if ({} == false ) {console.log(3);};
// if ({}) {console.log(4);};//4
// if ([1] == [1]) {console.log(5);};
// console.log({}==false);//false
// console.log({}==true);//false


// const obj = {
//     name: " jsCoder",
//     skill: ["es6", "react", "angular"],
//     say: function () {
//         for(let i = 0, len = this.skill.length; i< len; i++){
//             setTimeout(()=>{
//                 console.log("No." + (i+1) + this.name);
//                 console.log(this.skill[i]);
//                 console.log("--------------");
//             }, 0);
//             console.log(i+1);
//         }
//     }
// };
// obj.say();
/*
期望得到下面的结果:
1
2
3
No.1 jsCoder
es6
/------------------------
No.2 jsCoder
react
/---------------------------
No. 3 jsCoder
angular
/--------------------------
*/






  
    </script>
</body>
</html>